/******************************************************************************

Description:
  This is the main driver code for this project. Command line arguments are 
  read, first phase and second phase objects are created and run. 
  A parallel implementation of the CLOSET+ algorithm is implemented using 
  Boost::MPI library. TCLAP Library is used for parsing command line arguments.

Notes:
  Two executables can be generated from the whole project. If one wants a serial
  version of CLOSET+ either to compare runnings or else, he can compile the
  project without any macro definitions. If parallel MPI version is wanted, 
  -DUSE_MPI macro definition flag must be provided to the compiler.


Date: 31/10/2008
Author: Tayfun Sen
Website: http://blog.tayfunsen.com
 
 *****************************************************************************/


#include <iostream>
#include <string>
#include <time.h>
#include <boost/mpi/environment.hpp>
#include <boost/mpi/communicator.hpp>
#include <boost/mpi.hpp>

#include "Globals.hpp"
#include "FirstPhase.hpp"
#include "SecondPhase.hpp"
#include <tclap/CmdLine.h>

using namespace std;

// Function prototypes for main.
// (none at the moment)
